Mobile communication and computing technologies have experienced significant growth over the past several years. This growth has lead to mobile computing systems of increased sophistication and complexity. The increased computing power has enabled mobile computing devices to capture information and data via a plurality of techniques. Mobile communication devices now more closely resemble computers, than standard telephones, and include everything from cameras to sophisticated operating systems.
Virtual keypads using touch screen displays are becoming increasingly popular on small handheld mobile devices. Such touch screens are often used for text entry, however, accurate text entry is difficult due to their small size and a user's inability to tap precise character locations on the screen. At the same time, this class of small handheld mobile devices often incorporate audio capabilities for telephony and basic automatic speech recognition (ASR) for phone dialing. Generally, such devices are not capable of high quality, large vocabulary, speech to text, and are subject to frequent ASR errors in high noise environments. Furthermore, is prone to frequent errors ASR in noisy environments.
Given the movement to these very small and powerful touch screen devices, users are now trying to input more significant messages. However, entering a lengthy message via a touch screen keypad can be time consuming and error prone. Current solutions include techniques such as spell checking. However, these solutions can be slow and often require user interaction. Consequently, it would be desirable to have a technique that improved both the accuracy and efficiency of text entry for mobile computing devices.